package com.xqboss.apps.vo.nft;


import com.xqboss.apps.enums.nft.NftTypeEnum;
import com.xqboss.apps.enums.nft.ResellEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * @author Administrator
 */
@ApiModel("藏品、装备Vo")
@Getter
@Setter
public class NftVo {

    /**
     * 主键
     */
    @ApiModelProperty("主键")
    private Long id;

    /**
     * 藏品名称
     */
    @ApiModelProperty("藏品名称")
    private String title;

    /**
     * 标签id
     */
    @ApiModelProperty("标签id")
    private Long categoryId;

    /**
     * 分类id
     */
    @ApiModelProperty("分类id")
    private Long categoryNftId;

    /**
     * 公告id
     */
    private Long announcementId;


    @ApiModelProperty("父标签id")
    private Long parentId;

    /**
     * 主图
     */
    @ApiModelProperty("主图")
    private String mainImg;

    /**
     * 作者id
     */
    @ApiModelProperty("作者id")
    private Long authorId;

    /**
     * 作者名称
     */
    @ApiModelProperty("作者名称")
    private String authorName;

    /**
     * 作者头像
     */
    @ApiModelProperty("作者头像")
    private String authorHeadimg;

    /**
     * 发行方id
     */
    @ApiModelProperty("发行方id")
    private Long publishId;

    /**
     * 发行方名称
     */
    @ApiModelProperty("发行方名称")
    private String publishName;

    /**
     * 发行方头像
     */
    @ApiModelProperty("发行方头像")
    private String publishHeadimg;

    /**
     * 藏品介绍
     */
    @ApiModelProperty("藏品介绍")
    private String description;

    /**
     * 状态
     */
    @ApiModelProperty("状态 1已绑定，2未绑定")
    private Integer status;

    /**
     * 价格
     */
    @ApiModelProperty("价格")
    private BigDecimal price;

    @ApiModelProperty("最低价")
    private BigDecimal lowestPrice;

    @ApiModelProperty("最高价")
    private BigDecimal maxPrice;

    /**
     * 转卖开关（0关闭，1开启）
     */
    private ResellEnum isResell;

    /**
     * 库存
     */
    @ApiModelProperty("剩余库存")
    private Integer stock;

    @ApiModelProperty("库存总数")
    private Integer totalStock;

    @ApiModelProperty("持有人数")
    private Integer holdUserCount;

    /**
     * 发售时间
     */
    @ApiModelProperty("发售时间")
    private LocalDateTime publishTime;

    /**
     * 1藏品,2装备
     */
    @ApiModelProperty("1藏品,2装备")
    private NftTypeEnum nftType;

    /**
     * 稀有度 1普通,2史诗,3传奇
     */
    @ApiModelProperty("稀有度 1普通,2史诗,3传奇")
    private Integer rarity;

    /**
     * 初始属性模版id
     */
    @ApiModelProperty("初始属性模版id")
    private Long attrTemplateId;

    /**
     * 升级点数id
     */
    @ApiModelProperty("升级点数id")
    private Long upgradeId;

    /**
     * 收益折算系数
     */
    @ApiModelProperty("收益折算系数")
    private BigDecimal coefficient;

    @ApiModelProperty("冷却时间(分钟)")
    private Integer coolingTime;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;

}
